/**************************************************************************************
*
*	Copyright (C) 2009 - 2012 Brent Andrew O. Chua - See LICENSE.txt for more info.
*		
*	Filename	-	EventNewActiveCamera.h
*
*	Description -	Event trigger when a new active camera is set in the scene
*
*	Comments	-
*
*	Modification History:
*			Name			   Date					Description
*			MrCodeSushi	-	06/13/2013	-	Creation of this file
**************************************************************************************/
#ifndef _PSX_EVENT_NEW_ACTIVE_CAMERA_H_
#define _PSX_EVENT_NEW_ACTIVE_CAMERA_H_

#include "PulseSTD.h"
#include "IEvent.h"
#include "Actor.h"

namespace Pulse
{
	class EventNewActiveCamera : public IEvent
	{
	public:

		EventNewActiveCamera( ActorPtr pNewActiveCam, ActorPtr pOldActiveCam = PSX_NULL );

		virtual ~EventNewActiveCamera( void ) { }

		virtual const EEvent::Type GetEventType( void ) const { return EEvent::SCENE_NEW_ACTIVE_CAMERA; }

		ActorPtr GetNewActorCamera( void ) { return m_pNewActorCam; }

		ActorPtr GetOldActorCamera( void ) { return m_pOldActorCam; }

	private:

		ActorPtr m_pNewActorCam;
		ActorPtr m_pOldActorCam;	// Null if not available


	};
}

#endif /* _PSX_EVENT_NEW_ACTIVE_CAMERA_H_ */